var appPath = getAppPath();

$(function() {
	initUserInfoGrid();//初始化加载
	$("#findType").combobox({
		data:[{'id':'','name':'[不限]'},{'id':'0','name':'未知用户'},{'id':'10','name':'内部人员'},{'id':'20','name':'普通用户'}],
		valueField:'id',
		textField:'name'
	});
});

// 获取一键秀用户信息
function initUserInfoGrid() {
	$('#userInfoGrid').datagrid({
		url : appPath + "/yjxUser/pageUserInfo.action",// 获取一键秀用户信息数据 
		height : 'full',
		striped : true,
		fitColumns : true,
		queryParams : getQueryParam1(),
		singleSelect : false,
		selectOnCheck : true,
		checkOnSelect : true,
		columns : [[
		   {field : 'profile_photo',title : '用户头像',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					var retUrl = '';
	        		if(value==null || value==''){
	        			value = 'http://itbour-back.oss-cn-hangzhou.aliyuncs.com/designer/default.jpg?x-oss-process=image/resize,m_lfit,h_120,w_100';
	        		}
	        		retUrl = '<a href="' +value+ '?x-oss-process=image/resize,m_lfit,h_120,w_100" target="_blank">'
	        		+ '<div style="margin-left:8px;display:table;text-align:center;height:90px;width:80px;">'
	        		+ '<span align="center" style="display:table-cell;vertical-align:middle">'
	        		+ '<img src="'+value+'" style="border-radius:17px;display:inline;max-height:80px;max-width:80px;"/></span></div></a>';
	        		return retUrl;
				}
		   }, 
		   {field : 'user_id',title : '用户ID',width :30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<span style="color:#9400D3;">'+value+'</span>';
				}
		   },
		   {field : 'account',title : '账号',width : 40,align : 'center',sortable : false,
			   formatter:function(value,rowData,rowIndex){
				   if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;font-size:4px;">暂无</span>';
			   }
		   },
		   {field : 'nickname',title : '用户昵称', width : 50,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
				if(value){
					return '<span style="color:#121212;">'+value+'</span>';
				}
				return '<span style="color:#919191;">暂无</span>';
				}
			}, 
			{field : 'real_name',title : '真实姓名', width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">暂无</span>';
				}
			}, 
			{field : 'mobile',title : '手机号', width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">暂无</span>';
				}
			}, 
			{field : 'user_type',title : '用户类型',width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					var ret ='<span style="color:red">未知</span>';
					switch(Number(value||'0')){
					case 0:ret='<span style="color:#CDC9C9;">暂未知</span>';break;
					case 10:ret='<span style="color:blue">内部人员</span>';break;
					case 20:ret='<span style="color:green">普通用户</span>';break;
					}
					return ret;
				}
			}, 
			{field : 'edit',title : '编辑',width : 25,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<a href="javascript:void(0)" style="font-size:15px;" onclick="showDetail('+rowData.user_id+')">编辑</a>';
				}
			},
			{field : 'showThird',title : '第三方账号',width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<a href="javascript:void(0)" onclick="showThirdInfo('+rowData.user_id+')">查看</>';
				}
			},
			{field : 'member_id',title : '会员状态',width : 25,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if (value){
						return '<font color="red">IsVIP</font>';
					}
					return 'NoVIP';
				}
			},
			{field : 'create_time',title : '创建时间',width : 50,align : 'center',sortable : false},
			{field : 'update_time',title : '修改时间',width : 35,align : 'left',sortable : false,
				formatter:function(value,rowData,rowIndex){
					return '<span style="white-space:pre-wrap;display:block;">'+value+'</span>';
				}
			}
			]],
		pagination : true,
		rownumbers : true,
		toolbar : [
		    {
		    	text : '<i class="fa fa-floppy-o" style="font-size:14px"></i>导出用户资料',
		    	handler : function(){
		    		expUserInfo();
		    	}
		    },
		    '-',
		    {
		    	text : '<i class="fa fa-repeat" style="font-size:13px"></i>清空时间',
		    	handler : function(){
		    		clearTime();
		    	}
		    }       
		]
	});
}

// 导出用户信息
function expUserInfo(){
	var findDtS = $("#queryDateStart").datebox('getValue');
	var findDtE = $("#queryDateEnd").datebox('getValue');
	findDtS = chkInputDate(findDtS);
	findDtE = chkInputDate(findDtE);
	console.log(findDtS);
	if ((!findDtS)&&(!findDtE)){
		$.messager.alert('message','请选择时间段，进行导出操作!','info');
		return;
	}
	
	$.messager.confirm('message','将导出该时间段近1000条数据,是否继续导出?',function(r){
		if (r){
			var downUrl =appPath + '/yjxUser/exportYjxUserInfo.action';
			var obj = {
				'findDtS' : findDtS,
				'findDtE' : findDtE
			};
			
			$.post(downUrl,obj,function(ret){
				$.loading(false);
				if(ret && ret.length>0) {
					var strDate=$.DateUtil.format(new Date(),'yyyyMMddhhmmss');
					var fNm = "YJX_UserInfo_"+strDate+".csv";
					var blob = new Blob([ret]);
					var aLink = $('#downA');
					aLink.html(fNm);
					aLink.attr("download", fNm);
					aLink.attr("href", URL.createObjectURL(blob));
					$("#downBtn").show();
					$('#downDlg').window({
						title:'用户信息导出',
						iconCls:'icon-save',
						modal: true,
						shadow: true,
						collapsible:false,
						minimizable:false,
						maximizable:false
					});
					$('#downDlg').window('move',{top:120,left:120});
					$('#downDlg').window('open');
					
				} else {
					$.messager.alert('提示信息','数据获取失败','info');
				}
			});
			
		}
	});
}

function cancelDown(){
	$('#downDlg').window('close');
}


function clearTime(){
	$("#queryDateStart").datetimebox('setValue','');
	$("#queryDateEnd").datetimebox('setValue','');
}

//  查看第三方账号信息
function showThirdInfo(userId){
	$('#thirdUserDlg').window({
		title:'第三方用户信息',
		iconCls:'icon-tip',
		modal: true,
		shadow: true,
		collapsible:false,
		minimizable:false,
		maximizable:false
	});
	$('#thirdUserDlg').window('move',{top:20,left:20});
	$('#thirdUserDlg').window('open');
	initThirdUserInfo(userId);
}

//	获取第三方账号信息 列表
function initThirdUserInfo(userId) {
	$('#thirdUserGrid').datagrid({
		url : appPath + "/yjxUser/pageGetThirdUserInfo.action?findUserId="+userId,// 获取一键秀用户信息数据 
		height : '320',
		striped : true,
		fitColumns : true,
		singleSelect : false,
		selectOnCheck : true,
		checkOnSelect : true,
		columns : [[
		   {field : 'user_id',title : '用户ID',width : 15,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<span style="color:#9400D3;">'+value+'</span>';
				}
		   },
		   {field : 'account_type',title : '账号类型',width : 25,align : 'center',sortable : false,
			   formatter:function(value,rowData,rowIndex){
				// 第三方账号类型: 0:未知, 10:手机号(需要密码), 11:邮箱(需要密码), 
				// 20:微信, 21:QQ, 30:小米, 100:一键生成
				   var ret = '';
				   switch (value || '0'){
				   case 0 : ret = '未知';break;
				   case 10 : ret = '手机号';break;
				   case 11 : ret = '邮箱';break;
				   case 20 : ret = '微信';break;
				   case 21 : ret = 'QQ';break;
				   case 30 : ret = '小米';break;
				   case 100 : ret = '一键生成';break;
				   }
				   return '<span style="color:#CD8162;">'+ret+'</span>';
			   }
		   },
		   {field : 'nickname',title : '第三方昵称', width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
				if(value){
					return '<span style="color:#121212;">'+value+'</span>';
				}
				return '<span style="color:#919191;">未填</span>';
				}
			}, 
			{field : 'field1',title : '内容1', width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">未填</span>';
				}
			}, 
			{field : 'field2',title : '内容2', width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">未填</span>';
				}
			}, 
			{field : 'field3',title : '内容3', width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">未填</span>';
				}
			}, 
			{field : 'user_type',title : '用户类型',width : 20,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					var ret ='<span style="color:red">未知</span>';
					switch(Number(value||'0')){
					case 0:ret='<span style="color:#CDC9C9;">暂未知</span>';break;
					case 10:ret='<span style="color:blue">内部人员</span>';break;
					case 20:ret='<span style="color:green">普通用户</span>';break;
					}
					return ret;
				}
			}, 
			{field : 'create_time',title : '创建时间',width : 40,align : 'center',sortable : false},
			{field : 'update_time',title : '修改时间',width : 40,align : 'center',sortable : false}
			]],
		pagination : true,
		rownumbers : true
	});
}


//获取单个用户信息
function showDetail(id){
	$("#editTable").show();
	$('#editForm').form('clear');
	$("#userId").val(id);
	$("#editBtn").show();
	$("#editUserId").attr('disabled','disabled');
	$("#editPass").attr('disabled','disabled');
	$("#editHurl").attr('disabled','disabled');
	$("#editSigna").attr('disabled','disabled');
	
	var url = appPath + '/yjxUser/getOneYjxUserInfo.action?id='+id;//获取单个用户信息
	
	$.get(url,function(data){
		if(data && data.length>0){
			var info = data[0];
			$("#editUserId").val(info.user_id);
			$("#editName").val(info.account);
			$("#editPass").val(info.password);
			$("#editNickName").val(info.nickname);
			var head_url = 'http://itbour-back.oss-cn-hangzhou.aliyuncs.com/designer/default.jpg';
			if(info.profile_photo){
				head_url=info.profile_photo;
			}
			var retUrl = '<a href="' +head_url+ '" target="_blank">'
    		+ '<div style="display:table;text-align:center;height:80px;width:80px;">'
    		+ '<span align="center" style="display:table-cell;vertical-align:middle">'
    		+ '<img src="'+head_url+'?x-oss-process=image/resize,m_lfit,h_120,w_120'
    		+ '" style="display:inline;max-height:80px;max-width:80px;"/></span></div></a>';
			$("#editHurl").html(retUrl);
			$("#editType").combobox({
				data:[{'id':0,'name':'未知'},{'id':10,'name':'后台人员'},{'id':20,'name':'普通用户'}],
				valueField:'id',
				textField:'name',
				value:info.user_type
			});
			$("#editSigna").val(info.signature);
			$("#evaluation").val(info.evaluation);// 用户评价分
		}
	});
	
	$('#editDlg').window({
		title : '一键秀用户信息',
		iconCls : 'icon-edit',
		modal : true,
		shadow : true,
		collapsible : false,
		minimizable : false,
		maximizable : false
	});
	$('#editDlg').window('move', {
		top : 20,
		left : 20
	});
	$('#editDlg').window('open');
}

//修改
function doEdit(){
	$.messager.confirm('提示信息','是否确定提交修改？',function(r){
		if(r){
			var userId = $("#editUserId").val();//用户ID
			var type = $("#editType").combobox('getValue');
			var uName=$("#editName").val();
			var nickname = $("#editNickName").val();
			var evaluation = $("#evaluation").val();// 获取用户评分 
			var url = appPath+"/yjxUser/updUserInfo.action";//修改
			var sendData = {
				"userInfo.user_id": userId||"",
				"userInfo.user_type": type||'',
				"userInfo.account": uName || "",
				"userInfo.evaluation": evaluation || "",
				"userInfo.nickname": nickname || ""
			};
		    $.post(url, sendData, function(data){  
				if (data == "ok") { 
					$.messager.alert('提示信息','提交成功','info');
					doQuery1();
					$("#editDlg").window('close');
		        }else{
		        	$.messager.alert("提示信息","提交失败",'info');
		        	doQuery1();
		        	$("#editDlg").window('close');
		        }
		    });
		}
	});
}

//取消
function cancelEdit(){
	$('#editDlg').window('close');
	$("#editForm").form('clear');
}

//判断时间有效性
function chkInputDate(str){
	var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;  
	var r = str.match(reg); 
	if(r==null)return '';  
	r[2]=r[2]-1;  
	var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]);  
	if(d.getFullYear()!=r[1])return '';  
	if(d.getMonth()!=r[2])return '';  
	if(d.getDate()!=r[3])return '';  
	if(d.getHours()!=r[4])return '';  
	if(d.getMinutes()!=r[5])return '';  
	if(d.getSeconds()!=r[6])return '';  
	return str;  
}


function getQueryParam1() {
	var queryObject = {};
	var mobile=$("#mobile").val();
	var vName = $("#userName").val();
	var userId = $("#user_id").val();
	var findtype = $("#findType").combobox('getValue');
	var findMobile = $("#queryMobile").val();
	var findDtS = $("#queryDateStart").datebox('getValue');
	var findDtE = $("#queryDateEnd").datebox('getValue');
	findDtS = chkInputDate(findDtS);
	findDtE = chkInputDate(findDtE);
	console.log(findDtS);
	
	if (findMobile && Number(findMobile)>0) queryObject.findMobile = findMobile;
	if(mobile && mobile.length>0) queryObject.findMobile = mobile;
	if(vName && vName.length>0) queryObject.findName = vName;
	if(userId && userId.length>0) queryObject.findUserId = userId
	if(Number(findtype)>=0) queryObject.findType = findtype;
	
	if (findDtS) queryObject.findDtS = findDtS;
	if (findDtE) queryObject.findDtE = findDtE;
	
	return queryObject;
}

//判断日期格式[YYYY-MM-DD]
function chkInputDate(str){
	var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;  
	var r = str.match(reg); 
	if(r==null)return '';  
	r[2]=r[2]-1;  
	var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]);  
	if(d.getFullYear()!=r[1])return '';  
	if(d.getMonth()!=r[2])return '';  
	if(d.getDate()!=r[3])return '';  
	if(d.getHours()!=r[4])return '';  
	if(d.getMinutes()!=r[5])return '';  
	if(d.getSeconds()!=r[6])return '';  
	return str;  
}

//确定选择用户
function chkUser(){
	var selectItem=$("#userInfoGrid").datagrid("getChecked");
	if(!selectItem || selectItem.length == 0){
		$.messager.alert('提示信息','请选择勾选用户！','warning');
		return;
	}
	var itemId = '';
	$.each(selectItem, function(index, item){
		itemId = item.user_id;
	});
	$("#eUserId").val(itemId);
	$("#userInfoDlg").window('close');
	$("#userForm").form('clear');
}

//取消添加会员
function cancelUser(){
	$("#userInfoDlg").window('close');
	$("#userForm").form('clear');	
}

function doQuery1(startFlg) {
	$("#userInfoGrid").datagrid('unselectAll');
	if (startFlg == 1) {
		$("#userInfoGrid").datagrid('load', getQueryParam1());
	} else {
		$("#userInfoGrid").datagrid('reload', getQueryParam1());
	}
}
